Обработка является универсальной (т.е. может использоваться в любой ИБ для любой выгрузки журнала регистрации).
Для получения выгрузки журнала регистрации в формате XML можно воспользоваться процедурой встроенного языка ВыгрузитьЖурналРегистрации() или открыть журнал регистрации и выполнить команду главного меню "Файл | Сохранить как..." (выбрав в качестве типа сохраняемого файла - Документ XML).
В данной обработке, при помощи объекта ПостроительОтчета, выполняется создание отчета, формирование сводной таблицы, отображение сводной диаграммы, а также анализ данных. Источником данных для построителя отчета служит таблица значений, заполненная данными из XML-документа - выгрузки журнала регистрации.
Чтение XML-документа производится последовательно, при этом предполагается, что состав и порядок следования элементов, описывающих событие, строго определен, но часть элементов может отсутствовать (при выгрузке журнала регистрации может быть указан список выгружаемых полей). В процессе чтения документа XML происходит фильтрация данных, в соответствии с установленным отбором - это позволяет избежать загрузки лишней информации в оперативную память компьютера.
После открытия журнала регистрации производится предварительное чтение первого события журнала, для определения имеющихся в данной выгрузке полей журнала регистрации. По полученной структуре полей создается таблица значений, на основе которой формируется источник данных для построителя отчета. Перед чтением данных производится создание нового построителя отчета, все настройки переносятся из оригинального построителя отчета, а структура источника данных формируется на основании анализа полей оригинального построителя отчета. В структуру источника данных включаются только необходимые поля - это позволяет избежать загрузки лишней информации в оперативную память компьютера.
Программный код чтения событий журнала регистрации сосредоточен в процедуре "ПрочитатьЖурналВТаблицуЗначений()". В качестве параметра в данную процедуру передается таблица значений, в которую необходимо загрузить документ XML, шаблон структуры события, отбор и группировка, полученный на основе настроек построителя отчета. В дальнейшем, в цикле происходит вызов функции "ПрочитатьСобытиеЖурнала()", которая читает очередное событие журнала регистрации и устанавливает значения в соответствующие свойства шаблона события. После чтения заполненный шаблон передается в функцию "СобытиеУдовлетворяетОтбору()" для определения необходимости помещения считанных данных в результирующую таблицу значений. Также, в процессе чтения, производится свертка прочитанных данных по всем полям, за исключением полей участвующих только в отборе и поля "Количество" - по нему производится суммирование.
Заполненный шаблон события является источником для встроенной процедуры ЗаполнитьЗначенияСвойств(). Данная процедура выполняет копирование значений из свойств объекта-источника в свойства объекта-приемника, выполняя сопоставление свойств по именам.
Обработка КонсольАнализаЖурналаРегистрации81.epf находится в каталоге \1CITS\EXE\ExtReps\Unireps81\EventLogConsole\